On the Macintosh, we use ValidRect to make sure QuickTime does not blit over the higher level movies when updating the background movie. On Windows, this does not work, so we get a lot of flashing as the background movie and then the foreground movies are updated.
What can we do to avoid this?
A Here are two approaches you can take to avoid the flashing as movies are
updated:
1. Create an offscreen bitmap, and when you need to update (EraseBKGND or Paint), stop the movie, call GetMoviePict for each QuickTime movie, and then call DrawPicture into the screen buffer. Use a BitBlt to update the screen, and restart the movie (if it was playing before). While this method will work, GetMoviePict() can be very slow if you're not at a key frame.
2. If you protect the foreground movies by placing them in child windows, you
won't need to stop them or do multiple calls to GetMoviePict(). This allows the
background movie to be played non-destructively behind the foreground movies
without stopping them.